10.2 内置工具介绍

6 分钟阅读

Claude Code 提供了丰富的内置工具集,涵盖了文件操作、搜索、命令执行、项目管理等多个方面。这些工具可以帮助您高效完成各种开发任务,提高工作效率。

1. 文件操作工具#

Read 工具#

Read 工具用于读取文件内容,支持读取整个文件或特定范围的行。

语法:

bash
读取文件 [文件路径]

示例:

bash
读取 package.json 读取 src/components/Header.tsx 读取 src/utils.js 从第 10 行开始的 20

参数:

  • file_path: 文件路径(必需)
  • limit: 读取行数(可选,默认读取整个文件)
  • offset: 起始行号(可选,默认从第 1 行开始)

返回结果:

json
{ "file_path": "package.json", "content": "{\"name\": \"my-project\", \"version\": \"1.0.0\"}", "line_count": 10 }

Write 工具#

Write 工具用于写入文件内容,可以创建新文件或覆盖现有文件。

语法:

bash
写入文件 [文件路径] [内容]

示例:

bash
创建一个新的组件文件: src/components/Button.tsx 更新 README.md: # My Project\n\nThis is my project.

注意: Write 工具会覆盖整个文件内容。如果需要修改文件的特定部分,请使用 Edit 工具。

参数:

  • file_path: 文件路径(必需)
  • content: 文件内容(必需)

Edit 工具#

Edit 工具用于编辑文件的特定部分,支持搜索替换、插入、删除等操作。

语法:

bash
编辑文件 [文件路径]

示例:

bash
修改函数签名: 将 function add(a, b) 改为 function add(a: number, b: number): number 更新导入语句: 将 import React from 'react' 改为 import * as React from 'react'

优势:

  • 精确修改: 只修改目标部分,保留文件其他内容
  • 安全: 减少意外更改整个文件的风险
  • 高效: 无需手动查找和替换

参数:

  • file_path: 文件路径(必需)
  • old_str: 要替换的旧内容(必需)
  • new_str: 替换后的新内容(必需)

Delete 工具#

Delete 工具用于删除文件或目录。

语法:

bash
删除文件 [文件路径]

示例:

bash
删除旧的配置文件: .env.old 清理临时文件: tmp/*.log

注意: 删除操作不可逆,请谨慎使用。在删除重要文件前,建议先备份。

参数:

  • file_path: 文件或目录路径(必需)

Glob 工具#

Glob 工具用于按模式查找文件,支持通配符匹配。

语法:

bash
查找文件 [模式]

示例:

bash
查找所有 JavaScript 文件: *.js 查找所有测试文件: **/*.test.js

参数:

  • pattern: 文件匹配模式(必需)
  • path: 搜索路径(可选,默认当前目录)

2. 搜索工具#

Grep 工具#

Grep 工具用于在文件中搜索文本模式,支持正则表达式。

语法:

bash
搜索 [模式] [路径]

示例:

bash
搜索所有 TODO 注释: TODO 查找包含 "error" 的文件: error 搜索特定函数调用: functionName\(\)

参数:

  • pattern: 搜索模式(必需,支持正则表达式)
  • path: 搜索路径(可选,默认当前目录)
  • glob: 文件模式(可选,限制搜索的文件类型)
  • -i: 忽略大小写(可选)
  • -v: 反向匹配(可选,显示不匹配的行)

返回结果:

json
{ "matches": [ { "file_path": "src/App.js", "line_number": 42, "line_content": "// TODO: Add error handling" }, { "file_path": "src/utils.js", "line_number": 100, "line_content": "// TODO: Optimize performance" } ] }

SearchCodebase 工具#

SearchCodebase 工具用于语义搜索代码库,查找与查询相关的代码片段。

语法:

bash
搜索代码 [查询]

示例:

bash
搜索代码: 处理用户认证的函数 搜索代码: 实现数据缓存的逻辑

优势:

  • 语义理解: 理解代码的含义,而不仅仅是文本匹配
  • 跨文件搜索: 搜索整个代码库
  • 智能推荐: 提供相关的代码片段

参数:

  • query: 搜索查询(必需)
  • limit: 返回结果数量(可选,默认 10)

Find 工具#

Find 工具用于查找文件和目录,支持复杂的搜索条件。

语法:

bash
查找 [条件]

示例:

bash
查找所有大于 1MB 的文件 查找最近 7 天修改的文件

参数:

  • size: 文件大小条件(可选)
  • mtime: 修改时间条件(可选)
  • type: 文件类型(可选,f 表示文件,d 表示目录)

3. 命令执行工具#

Bash 工具#

Bash 工具用于执行 shell 命令。

语法:

bash
执行命令 [命令]

示例:

bash
执行命令: npm install 执行命令: git status 执行命令: ls -la

参数:

  • command: 要执行的 shell 命令(必需)
  • cwd: 工作目录(可选,默认当前目录)

返回结果:

json
{ "command": "npm install", "exit_code": 0, "output": "added 1423 packages in 2m", "error": "" }

RunCommand 工具#

RunCommand 工具用于运行特定命令或脚本,提供更多的控制选项。

语法:

bash
运行命令 [命令]

示例:

bash
运行命令: python script.py 运行命令: ./build.sh

参数:

  • command: 要运行的命令(必需)
  • env: 环境变量(可选)
  • timeout: 超时时间(可选)

Background 工具#

Background 工具用于在后台运行命令,允许您继续其他操作。

语法:

bash
在后台运行 [命令]

示例:

bash
在后台运行: npm run dev 在后台运行: webpack --watch

参数:

  • command: 要在后台运行的命令(必需)
  • task_id: 任务 ID(可选,用于后续管理)

4. 项目管理工具#

Git 工具#

Git 工具用于执行 Git 操作,如提交、推送、拉取等。

语法:

bash
Git [操作]

示例:

bash
Git 提交: git commit -m "Add new feature" Git 推送: git push origin main Git 拉取: git pull origin main

参数:

  • operation: Git 操作(必需)

NPM 工具#

NPM 工具用于执行 NPM 操作,如安装、更新、构建等。

语法:

bash
NPM [操作]

示例:

bash
NPM 安装: npm install react NPM 更新: npm update NPM 构建: npm run build

参数:

  • operation: NPM 操作(必需)

Docker 工具#

Docker 工具用于执行 Docker 操作,如构建、运行、推送等。

语法:

bash
Docker [操作]

示例:

bash
Docker 构建: docker build -t my-image . Docker 运行: docker run -p 8080:80 my-image Docker 推送: docker push my-image

参数:

  • operation: Docker 操作(必需)

5. 集成工具#

MCP 工具#

MCP(模型上下文协议)工具用于与外部服务交互,扩展 Claude 的能力。

语法:

bash
MCP [服务] [操作]

示例:

bash
MCP 数据库 查询: SELECT * FROM users MCP API 调用: GET /api/data

参数:

  • service: 要交互的服务(必需)
  • operation: 要执行的操作(必需)

Plugins 工具#

Plugins 工具用于加载和管理插件,扩展 Claude 的功能。

语法:

bash
插件 [操作]

示例:

bash
插件 安装: my-plugin 插件 启用: my-plugin 插件 禁用: my-plugin

参数:

  • operation: 插件操作(必需)

Skills 工具#

Skills 工具用于加载和使用技能,提供特定领域的专业知识。

语法:

bash
技能 [名称]

示例:

bash
技能 前端开发 技能 数据分析 技能 机器学习

参数:

  • name: 技能名称(必需)

工具选择指南#

选择合适的工具可以提高工作效率,以下是一些选择建议:

  1. 文件操作: 使用 Read、Write、Edit、Delete 工具
  2. 文本搜索: 使用 Grep 工具
  3. 代码搜索: 使用 SearchCodebase 工具
  4. 命令执行: 使用 Bash 或 RunCommand 工具
  5. 后台任务: 使用 Background 工具
  6. 项目管理: 使用 Git、NPM、Docker 工具
  7. 外部集成: 使用 MCP 工具

通过熟练掌握这些内置工具,您可以充分发挥 Claude Code 的能力,高效完成各种开发任务。

标记本节教程为已读

记录您的学习进度,方便后续查看。